using System;
using System.Collections.Generic;

using System.Text;
using Sinacor.Infra.UI.Common;

namespace Sinacor.UI.Bovespa.Corretagem.Communication.Translator.ModelToDataContract
{
    /// <summary>
    /// Faixa Corretagem
    /// </summary>
	public class FaixaCorretagem : BaseModel
	{
		#region Métodos
		
		/// <summary>
		/// Método ToFaixaCorretagemRequest
		/// </summary>
        public Bovespa.Corretagem.FaixaCorretagem.FaixaCorretagemRequest ToFaixaCorretagemRequest(Sinacor.UI.Bovespa.Corretagem.Model.FaixaCorretagem request)
		{

            Bovespa.Corretagem.FaixaCorretagem.FaixaCorretagemRequest response = new Bovespa.Corretagem.FaixaCorretagem.FaixaCorretagemRequest();
			if (request != null)
			{
                response.DataInicial = request.DataInicial;
                response.DataFinal = request.DataFinal;
                response.NumeroFaixa = request.NumeroFaixa;
                response.PercentualAliquota = request.PercentualAliquota;
                response.ValorAcrescimo = request.ValorAcrescimo;
                response.ValorInferior = request.ValorInferior;
                response.ValorSuperior = request.ValorSuperior;
				
			}
			return response;
			
		}
		
		/// <summary>
		/// Método ToFiltroFaixaCorretagemChaveRequest
		/// </summary>
        public Bovespa.Corretagem.FaixaCorretagem.FiltroFaixaCorretagemChaveRequest ToFiltroFaixaCorretagemChaveRequest(Model.Parameter.FiltroFaixaCorretagemChave request)
		{

            Bovespa.Corretagem.FaixaCorretagem.FiltroFaixaCorretagemChaveRequest response = new Bovespa.Corretagem.FaixaCorretagem.FiltroFaixaCorretagemChaveRequest();
			if (request != null)
			{
                response.DataInicial = request.DataInicial.Value;
                if(request.NumeroFaixa.HasValue)
                    response.NumeroFaixa = request.NumeroFaixa.Value;
				
			}
			return response;
			
		}
		
		/// <summary>
		/// Método ToFiltroFaixaCorretagemRequest
		/// </summary>
        public Bovespa.Corretagem.FaixaCorretagem.FiltroFaixaCorretagemRequest ToFiltroFaixaCorretagemRequest(Model.Parameter.FiltroFaixaCorretagem request)
		{

            Bovespa.Corretagem.FaixaCorretagem.FiltroFaixaCorretagemRequest response = new Bovespa.Corretagem.FaixaCorretagem.FiltroFaixaCorretagemRequest();
			if (request != null)
			{
                response.DataInicial = request.DataInicial;
                response.DataFinal = request.DataFinal;
                response.NumeroFaixa = request.NumeroFaixa;
                response.PercentualAliquota = request.PercentualAliquota;
                response.ValorAcrescimo = request.ValorAcrescimo;
                response.ValorInferior = request.ValorInferior;
                response.ValorSuperior = request.ValorSuperior;
                response.Periodo = new Sinacor.UI.Bovespa.Corretagem.Communication.Bovespa.Corretagem.FaixaCorretagem.PeriodoRequest();
                response.Periodo.DataFinal = request.Periodo.DataFinal;
                response.Periodo.DataInicial = request.Periodo.DataInicial;
				
			}
			return response;
			
		}
		#endregion
	}
}

